Matthew Vernon [Thu, 6 Feb 2025 14:44:19 +0000 (14:44 +0000)]
Update PCRE tests to fix case confusion (Closes: #1095286)
MariaDB RLIKE is case-insensitive; in perl the Unicode character
property tests \p{Lu} and \p{Ll} are equivalent to \p{L&} in
case-insensitive matches. So remove those tests (since there is
already the \p{L&} test).
This fixes a FTBFS with PCRE2 10.45 which fixed its handling of Ll Lt
and Lu under case-insensitive matching to match perl's behaviour.
Example of failure seen in MTR:
main.func_regexp_pcre w4 [ fail ]
Test ended at 2025-02-06 07:00:25
CURRENT_TEST: main.func_regexp_pcre
@@ -169,13 +169,13 @@
\p{Latin} 㐗 0
\p{Latin} 갷 0
\p{Ll} 1 0
-\p{Ll} A 0
+\p{Ll} A 1
\p{Ll} a 1
-\p{Ll} À 0
+\p{Ll} À 1
\p{Ll} à 1
-\p{Ll} Σ 0
+\p{Ll} Σ 1
\p{Ll} σ 1
-\p{Ll} Я 0
+\p{Ll} Я 1
\p{Ll} я 1
\p{Ll} ௨ 0
\p{Ll} ප 0
Forwarded: no
Gbp-Pq: Name 1095286-pcre-tests-case-confusion.patch
Otto Kekalainen [Sun, 30 Jun 2024 15:18:06 +0000 (15:18 +0000)]
Disable the 'mysql*' command deprecation warning
Many command-line tools expect the commands they run to return without
any output in stderr or having error codes. The fact that now in MariaDB
11.4 all 'mysql*' commands emit a deprecation warning causes a lot of
scripts to fail, such as the /etc/init.d/mariadb itself and many dependent
programs as witnessed via Debian autopkgtests. See examples below.
Otto Kekalainen [Sun, 10 Mar 2024 16:56:13 +0000 (16:56 +0000)]
Show banner in server and client startup to drive community engagement
Suggest to users that they can support MariaDB development by simply giving a
star on GitHub. This patch experiments with how well such a banner works, and
may later change the contents to drive some other kind of engagement.
Client output:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 34
Server version: 10.11.7-MariaDB-3 Debian n/a
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Support MariaDB developers by giving a star at https://github.com/MariaDB/server
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
Server output:
[Note] Support MariaDB developers by giving a star at https://github.com/MariaDB/server
Daniel Black [Mon, 29 Jan 2024 03:51:30 +0000 (19:51 -0800)]
mariadb: FTBFS on hurd-i386: undefined reference to misc functions and files requires https://github.com/MariaDB/server/pull/2893 as debian explicit architectures aren't needed since dh_auto_configure handles this.
If it works, upstream welcome.
Hurd string from uname -m, "SYSTEM processor: i686-AT386" in mariadb
output. And wiki reference https://en.wikipedia.org/wiki/Uname
Origin: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1006531
Forwarded: no
Otto Kekalainen [Wed, 30 Jun 2021 04:08:05 +0000 (21:08 -0700)]
Make RocksDB build reproducible
The RocksDB binary included a string with the build timestamp:
> rocksdb_build_git_date:@2021-05-23-16:04:38@
As this changes from build to build, it makes the builds unreproducible.
Simply removing it solves the issue.
This temporary fix can be removed when a proper fix already done in upstream
lands in MariaDB when the RocksDB submodule is updated to a newer release.
Origin: https://github.com/facebook/rocksdb/commit/0a9a05ae12943b1529ef1eabbca5ce5a71c986bf
Bug: https://github.com/facebook/rocksdb/issues/7035
# Merged in RocksDB 6.19.3, but not updated into MariaDB yet
Gbp-Pq: Name fix-reproducible-builds-rocksdb.patch
Otto Kekalainen [Thu, 3 Mar 2022 02:13:18 +0000 (18:13 -0800)]
Fix various spelling errors still found in code
Two upstream PRs remain that have been merged, but not imported on MariaDB yet.
Forwarded: https://github.com/facebook/rocksdb/pull/9653
Origin: https://patch-diff.githubusercontent.com/raw/facebook/rocksdb/pull/9653.patch
# Merged in RocksDB 7.3.1, but not updated into MariaDB yet
Upstream will never accept this patch,
see https://github.com/MariaDB/server/pull/1718
Origin: https://patch-diff.githubusercontent.com/raw/MariaDB/server/pull/1718.patch
Forwarded: https://github.com/MariaDB/server/pull/1718 (rejected, will never be merged)
Andrew Kryczka [Wed, 17 Jun 2020 02:34:21 +0000 (19:34 -0700)]
rocksdb-kfreebsd
Upstream has merged this but we still need to wait for it to be included
in a RocksDB release and imported into MariaDB and then into Debian.
Bug: https://jira.mariadb.org/browse/MDEV-19251
Forwarded: https://github.com/facebook/rocksdb/pull/6992
# Merged in RocksDB 6.12.6 but not updated into MariaDB yet
Otto Kekäläinen [Thu, 20 Mar 2025 19:31:04 +0000 (12:31 -0700)]
mariadb (1:11.8.1-2) unstable; urgency=medium
* Disable test func_format on i386 (MDEV-36334) to get i386 builds
pass on official Debian buildd while upstream fixes the issue
* Restore better error message on service stop failures from c789cdaf
* Revert "Set CAP_IPC_LOCK capability if possible" to follow upstream
Matthew Vernon [Thu, 6 Feb 2025 14:44:19 +0000 (14:44 +0000)]
Update PCRE tests to fix case confusion (Closes: #1095286)
MariaDB RLIKE is case-insensitive; in perl the Unicode character
property tests \p{Lu} and \p{Ll} are equivalent to \p{L&} in
case-insensitive matches. So remove those tests (since there is
already the \p{L&} test).
This fixes a FTBFS with PCRE2 10.45 which fixed its handling of Ll Lt
and Lu under case-insensitive matching to match perl's behaviour.
Example of failure seen in MTR:
main.func_regexp_pcre w4 [ fail ]
Test ended at 2025-02-06 07:00:25
CURRENT_TEST: main.func_regexp_pcre
@@ -169,13 +169,13 @@
\p{Latin} 㐗 0
\p{Latin} 갷 0
\p{Ll} 1 0
-\p{Ll} A 0
+\p{Ll} A 1
\p{Ll} a 1
-\p{Ll} À 0
+\p{Ll} À 1
\p{Ll} à 1
-\p{Ll} Σ 0
+\p{Ll} Σ 1
\p{Ll} σ 1
-\p{Ll} Я 0
+\p{Ll} Я 1
\p{Ll} я 1
\p{Ll} ௨ 0
\p{Ll} ප 0
Forwarded: no
Gbp-Pq: Name 1095286-pcre-tests-case-confusion.patch
Otto Kekalainen [Sun, 30 Jun 2024 15:18:06 +0000 (15:18 +0000)]
Disable the 'mysql*' command deprecation warning
Many command-line tools expect the commands they run to return without
any output in stderr or having error codes. The fact that now in MariaDB
11.4 all 'mysql*' commands emit a deprecation warning causes a lot of
scripts to fail, such as the /etc/init.d/mariadb itself and many dependent
programs as witnessed via Debian autopkgtests. See examples below.
Otto Kekalainen [Sun, 10 Mar 2024 16:56:13 +0000 (16:56 +0000)]
Show banner in server and client startup to drive community engagement
Suggest to users that they can support MariaDB development by simply giving a
star on GitHub. This patch experiments with how well such a banner works, and
may later change the contents to drive some other kind of engagement.
Client output:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 34
Server version: 10.11.7-MariaDB-3 Debian n/a
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Support MariaDB developers by giving a star at https://github.com/MariaDB/server
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
Server output:
[Note] Support MariaDB developers by giving a star at https://github.com/MariaDB/server
Daniel Black [Mon, 29 Jan 2024 03:51:30 +0000 (19:51 -0800)]
mariadb: FTBFS on hurd-i386: undefined reference to misc functions and files requires https://github.com/MariaDB/server/pull/2893 as debian explicit architectures aren't needed since dh_auto_configure handles this.
If it works, upstream welcome.
Hurd string from uname -m, "SYSTEM processor: i686-AT386" in mariadb
output. And wiki reference https://en.wikipedia.org/wiki/Uname
Origin: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1006531
Forwarded: no
Otto Kekalainen [Wed, 30 Jun 2021 04:08:05 +0000 (21:08 -0700)]
Make RocksDB build reproducible
The RocksDB binary included a string with the build timestamp:
> rocksdb_build_git_date:@2021-05-23-16:04:38@
As this changes from build to build, it makes the builds unreproducible.
Simply removing it solves the issue.
This temporary fix can be removed when a proper fix already done in upstream
lands in MariaDB when the RocksDB submodule is updated to a newer release.
Origin: https://github.com/facebook/rocksdb/commit/0a9a05ae12943b1529ef1eabbca5ce5a71c986bf
Bug: https://github.com/facebook/rocksdb/issues/7035
# Merged in RocksDB 6.19.3, but not updated into MariaDB yet
Gbp-Pq: Name fix-reproducible-builds-rocksdb.patch
Otto Kekalainen [Thu, 3 Mar 2022 02:13:18 +0000 (18:13 -0800)]
Fix various spelling errors still found in code
Two upstream PRs remain that have been merged, but not imported on MariaDB yet.
Forwarded: https://github.com/facebook/rocksdb/pull/9653
Origin: https://patch-diff.githubusercontent.com/raw/facebook/rocksdb/pull/9653.patch
# Merged in RocksDB 7.3.1, but not updated into MariaDB yet
Upstream will never accept this patch,
see https://github.com/MariaDB/server/pull/1718
Origin: https://patch-diff.githubusercontent.com/raw/MariaDB/server/pull/1718.patch
Forwarded: https://github.com/MariaDB/server/pull/1718 (rejected, will never be merged)
Andrew Kryczka [Wed, 17 Jun 2020 02:34:21 +0000 (19:34 -0700)]
rocksdb-kfreebsd
Upstream has merged this but we still need to wait for it to be included
in a RocksDB release and imported into MariaDB and then into Debian.
Bug: https://jira.mariadb.org/browse/MDEV-19251
Forwarded: https://github.com/facebook/rocksdb/pull/6992
# Merged in RocksDB 6.12.6 but not updated into MariaDB yet
Otto Kekäläinen [Wed, 19 Feb 2025 16:57:57 +0000 (08:57 -0800)]
mariadb (1:11.4.5-1) unstable; urgency=medium
[ Otto Kekäläinen ]
* New upstream version 11.4.5. Includes fixes for several defects
as noted at https://mariadb.com/kb/en/mariadb-11-4-5-release-notes/ as well
the following security issues:
- CVE-2025-21490
* Include new packaging changes done upstream:
- MDEV-35907: debian-start script fails when using non-standard socket path
- MCOL-5819: Disable LTO for ColumnStore, otherwise enabled by default
- MDEV-32686: Include ELF package notes
* Update configuration traces to match changes done in MDEV-35785
* Update configuration traces with new query allocator values from MDEV-35750
* Build MariaDB RocksDB on loong64 now too
* Fix minor typos in Debian packaging files
* Fix broken links in d/copyright
* Unify spelling fix patches into one, and fix spelling of Enrypt->Encrypt
[ Matthew Vernon ]
* Add patch to fix `main.func_regexp_pcre` failing with latest PCRE2 10.45
due to backwards-incompatible case-sensitivity change in behavior in latest
PCRE2 version (Closes: #1095286)
[ Joe Bliss ]
* Revert backticks change in commit 0300a915 to be compatible with databases
containing hyphenated table names (LP: #2085554)
Otto Kekäläinen [Sun, 12 Jan 2025 21:31:16 +0000 (13:31 -0800)]
MDEV-35785: Use same innodb_log_file_mmap description on all systems
On most 64-bit architectures `mariadbd --help --verbose` said:
Whether ib_logfile0 resides in persistent memory or
should initially be memory-mapped
On 32-bit architectures and some 64-bit (e.g. s390x) it said:
Whether ib_logfile0 should initially be memory-mapped
Having the help test vary with the same source code build with the same
build flags and dependencies seems confusing. Unify the text to always
be the same for clarity.
Ideally the embedded help text would be the exact same first sentence
as the wiki docs[1] but use this custom text now for better clarity.
Marko Mäkelä [Wed, 8 Jan 2025 10:59:28 +0000 (12:59 +0200)]
[PATCH 1/2] MDEV-35785 innodb_log_file_mmap is not defined on 32-bit systems
HAVE_INNODB_MMAP: Remove, and unconditionally enable this code.
log_mmap(): On 32-bit systems, ensure that the size fits in 32 bits.
log_t::resize_start(), log_t::resize_abort(): Only handle memory-mapping
if HAVE_PMEM is defined. The generic memory-mapped interface is only for
reading the log in recovery. Writable memory mappings are only for
persistent memory, that is, Linux file systems with mount -o dax.
Xiaochuan Cui [Fri, 29 Nov 2024 21:52:19 +0000 (13:52 -0800)]
MDEV-35528: mariadb-binlog cannot process more than 1 logfiles when --stop-datetime is specified
Fix regression introduced by commits 9588526 and 242b67f which attempted to
address MDEV-27037. With the regression, mariadb-binlog cannot process multiple
log files when --stop-datetime is specified.
Remove the code to set retval as OK_STOP if mariadb-binlog finished processing
current log file but not reached specified --stop-datetime or --stop-position,
to make it possible to continue process following log files.
All new code of the whole pull request, including one or several files that are
either new files or modified ones, are contributed under the BSD-new license. I
am contributing on behalf of my employer Amazon Web Services, Inc.
Otto Kekalainen [Sun, 30 Jun 2024 15:18:06 +0000 (15:18 +0000)]
Disable the 'mysql*' command deprecation warning
Many command-line tools expect the commands they run to return without
any output in stderr or having error codes. The fact that now in MariaDB
11.4 all 'mysql*' commands emit a deprecation warning causes a lot of
scripts to fail, such as the /etc/init.d/mariadb itself and many dependent
programs as witnessed via Debian autopkgtests. See examples below.
Otto Kekalainen [Sun, 10 Mar 2024 16:56:13 +0000 (16:56 +0000)]
Show banner in server and client startup to drive community engagement
Suggest to users that they can support MariaDB development by simply giving a
star on GitHub. This patch experiments with how well such a banner works, and
may later change the contents to drive some other kind of engagement.
Client output:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 34
Server version: 10.11.7-MariaDB-3 Debian n/a
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Support MariaDB developers by giving a star at https://github.com/MariaDB/server
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
Server output:
[Note] Support MariaDB developers by giving a star at https://github.com/MariaDB/server
Daniel Black [Mon, 29 Jan 2024 03:51:30 +0000 (19:51 -0800)]
mariadb: FTBFS on hurd-i386: undefined reference to misc functions and files requires https://github.com/MariaDB/server/pull/2893 as debian explicit architectures aren't needed since dh_auto_configure handles this.
If it works, upstream welcome.
Hurd string from uname -m, "SYSTEM processor: i686-AT386" in mariadb
output. And wiki reference https://en.wikipedia.org/wiki/Uname
Origin: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1006531
Forwarded: no
Otto Kekalainen [Wed, 30 Jun 2021 04:08:05 +0000 (21:08 -0700)]
Make RocksDB build reproducible
The RocksDB binary included a string with the build timestamp:
> rocksdb_build_git_date:@2021-05-23-16:04:38@
As this changes from build to build, it makes the builds unreproducible.
Simply removing it solves the issue.
This temporary fix can be removed when a proper fix already done in upstream
lands in MariaDB when the RocksDB submodule is updated to a newer release.
Origin: https://github.com/facebook/rocksdb/commit/0a9a05ae12943b1529ef1eabbca5ce5a71c986bf
Bug: https://github.com/facebook/rocksdb/issues/7035
# Merged in RocksDB 6.19.3, but not updated into MariaDB yet
Gbp-Pq: Name fix-reproducible-builds-rocksdb.patch
Otto Kekalainen [Thu, 3 Mar 2022 02:13:18 +0000 (18:13 -0800)]
Fix various spelling errors still found in code
Two upstream PRs remain that have been merged, but not imported on MariaDB yet.
Forwarded: https://github.com/facebook/rocksdb/pull/9653
Origin: https://patch-diff.githubusercontent.com/raw/facebook/rocksdb/pull/9653.patch
# Merged in RocksDB 7.3.1, but not updated into MariaDB yet
Upstream will never accept this patch,
see https://github.com/MariaDB/server/pull/1718
Origin: https://patch-diff.githubusercontent.com/raw/MariaDB/server/pull/1718.patch
Forwarded: https://github.com/MariaDB/server/pull/1718 (rejected, will never be merged)
Andrew Kryczka [Wed, 17 Jun 2020 02:34:21 +0000 (19:34 -0700)]
rocksdb-kfreebsd
Upstream has merged this but we still need to wait for it to be included
in a RocksDB release and imported into MariaDB and then into Debian.
Bug: https://jira.mariadb.org/browse/MDEV-19251
Forwarded: https://github.com/facebook/rocksdb/pull/6992
# Merged in RocksDB 6.12.6 but not updated into MariaDB yet
Ondrej Sury [Wed, 22 Nov 2017 20:32:51 +0000 (20:32 +0000)]
Change the default optimization from -O3 to -O2 in mysql_release.cmake BUILD_CONFIG profile
Forwarded: no
Bug: https://jira.mariadb.org/browse/MDEV-19734?focusedCommentId=156606&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-156606
Gbp-Pq: Name 0025-Change-the-default-optimization-from-O3-to-O2-in-mys.patch
Otto Kekäläinen [Sun, 12 Jan 2025 22:10:40 +0000 (14:10 -0800)]
mariadb (1:11.4.4-3) unstable; urgency=medium
* Set CAP_IPC_LOCK capability if possible
* Stop depending on obsolete libpmem-dev, re-implemented in MariaDB
* Clean away duplicate wsrep-provider from configuration traces
* Add upstream patch to ensure innodb_log_file_mmap is always visible
* Add patch to use the same innodb_log_file_mmap description on all systems
[PATCH] Disable the 'mysql*' command deprecation warning
Many command-line tools expect the commands they run to return without
any output in stderr or having error codes. The fact that now in MariaDB
11.4 all 'mysql*' commands emit a deprecation warning causes a lot of
scripts to fail, such as the /etc/init.d/mariadb itself and many dependant
programs as witnessed via Debian autopkgtests. See examples below.
Otto Kekäläinen [Sun, 10 Mar 2024 16:56:13 +0000 (16:56 +0000)]
[PATCH] Show banner in server and client startup to drive community engagement
Suggest to users that they can support MariaDB development by simply giving a
star on GitHub. This patch experiments with how well such a banner works, and
may later change the contents to drive some other kind of engagement.
Client output:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 34
Server version: 10.11.7-MariaDB-3 Debian n/a
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Support MariaDB developers by giving a star at https://github.com/MariaDB/server
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
Server output:
[Note] Support MariaDB developers by giving a star at https://github.com/MariaDB/server
Otto Kekäläinen [Sat, 11 Mar 2023 19:22:24 +0000 (11:22 -0800)]
[PATCH] Fix trivial spelling errors
- handshak -> handshake
- occured -> occurred
- releated -> related
- reponse -> response
- seperated -> separated
- sucess -> success
- use use -> use
All new code of the whole pull request, including one or several files
that are either new files or modified ones, are contributed under the
BSD-new license. I am contributing on behalf of my employer Amazon Web
Services, Inc.
Sutou Kouhei [Sat, 5 Feb 2022 02:05:39 +0000 (11:05 +0900)]
[PATCH] cmake: add support for reproducible buildS . We should use relative path not absolute path. We can use target without breaking reproducibility.
Gbp-Pq: Name mroonga-mrn-lib-dirs-path-reproducible-build.patch
# Merged in RocksDB 6.19.3, but not updated into MariaDB yet
Bug: https://github.com/facebook/rocksdb/issues/7035
Author: Otto Kekäläinen <otto@kekalainen.net>
Subject: Make RocksDB build reproducible
The RocksDB binary included a string with the build timestamp:
> rocksdb_build_git_date:@2021-05-23·16:04:38@
As this changes from build to build, it makes the builds unreproducible.
Simply removing it solves the issue.
This temporary fix can be removed when a proper fix already done in upstream
lands in MariaDB when the RocksDB submodule is updated to a newer release.
Gbp-Pq: Name fix-reproducible-builds-rocksdb.patch
# Merged in RocksDB 7.3.1, but not updated into MariaDB yet
From: Otto Kekäläinen <otto@debian.org>
Date: Wed, 2 Mar 2022 18:13:18 -0800
Subject: Fix various spelling errors still found in code
Two upstream PRs remain that have been merged, but not imported on MariaDB yet.
Otto Kekäläinen [Sun, 20 Dec 2020 18:58:42 +0000 (20:58 +0200)]
Fix perl path in scripts Fix Lintian issue https://lintian.debian.org/tags/incorrect-path-for-interpreter.html . Upstream will never accept this patch, see https://github.com/MariaDB/server/pull/1718
# Merged in RocksDB 6.12.6 but not updated into MariaDB yet
From: Andrew Kryczka <andrewkr@fb.com>
Date: Tue, 16 Jun 2020 19:34:21 -0700
# Merged in RocksDB 6.13.fb, but not updated into MariaDB yet
Bug: https://jira.mariadb.org/browse/MDEV-19251
Description:
Upstream has merged this but we still need to wait for it to be included
in a RocksDB release and imported into MariaDB and then into Debian.
Ondrej Sury [Wed, 22 Nov 2017 20:32:51 +0000 (20:32 +0000)]
Change the default optimization from -O3 to -O2 in mysql_release.cmake BUILD_CONFIG profile
Forwarded: no
Bug: https://jira.mariadb.org/browse/MDEV-19734?focusedCommentId=156606&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-156606
Gbp-Pq: Name 0025-Change-the-default-optimization-from-O3-to-O2-in-mys.patch
Otto Kekäläinen [Mon, 19 Aug 2024 04:59:29 +0000 (21:59 -0700)]
mariadb (1:11.4.3-1) unstable; urgency=medium
[ Otto Kekäläinen ]
* New upstream version 11.4.3. Includes fixes for several severe regressions
as noted at https://mariadb.com/kb/en/mariadb-11-4-3-release-notes/. This
release is not known to include any CVE assigned security fixes.
* Add Lintian override for metadata_lock_info.so not linked against libc
* Update Lintian overrides and MTR skiplists after 11.4.3 import
* Update server trace to include new parameters and values
* Refactor import * with only required imports
* Import upstream debian/ changes from MDEV-33750
* Pre-depend on 'procps' in mariadb-server
* Use /usr/lib/lsb/init-functions instead of old /lib location
* Rewrite the NEWS item to match latest status in MariaDB 11.4.3
* Extend gbp.conf and update maintainer READMEs to make git-buildpackage
and in general building and maintaining this package easier and more
approachable by new contributors
[PATCH] Disable the 'mysql*' command deprecation warning
Many command-line tools expect the commands they run to return without
any output in stderr or having error codes. The fact that now in MariaDB
11.4 all 'mysql*' commands emit a deprecation warning causes a lot of
scripts to fail, such as the /etc/init.d/mariadb itself and many dependant
programs as witnessed via Debian autopkgtests. See examples below.
Otto Kekäläinen [Sun, 10 Mar 2024 16:56:13 +0000 (16:56 +0000)]
[PATCH] Show banner in server and client startup to drive community engagement
Suggest to users that they can support MariaDB development by simply giving a
star on GitHub. This patch experiments with how well such a banner works, and
may later change the contents to drive some other kind of engagement.
Client output:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 34
Server version: 10.11.7-MariaDB-3 Debian n/a
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Support MariaDB developers by giving a star at https://github.com/MariaDB/server
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
Server output:
[Note] Support MariaDB developers by giving a star at https://github.com/MariaDB/server
Otto Kekäläinen [Sat, 11 Mar 2023 19:22:24 +0000 (11:22 -0800)]
[PATCH] Fix trivial spelling errors
- handshak -> handshake
- occured -> occurred
- releated -> related
- reponse -> response
- seperated -> separated
- sucess -> success
- use use -> use
All new code of the whole pull request, including one or several files
that are either new files or modified ones, are contributed under the
BSD-new license. I am contributing on behalf of my employer Amazon Web
Services, Inc.
Hugo Wen [Sat, 11 Mar 2023 00:27:42 +0000 (00:27 +0000)]
[PATCH] Fix a stack overflow in pinbox allocator
MariaDB supports a "wait-free concurrent allocator based on pinning addresses".
In `lf_pinbox_real_free()` it tries to sort the pinned addresses for better
performance to use binary search during "real free". `alloca()` was used to
allocate stack memory and copy addresses.
To prevent a stack overflow when allocating the stack memory the function checks
if there's enough stack space. However, the available stack size was calculated
inaccurately which eventually caused database crash due to stack overflow.
The crash was seen on MariaDB 10.6.11 but the same code defect exists on all
MariaDB versions.
A similar issue happened previously and the fix in fc2c1e43 was to add a
`ALLOCA_SAFETY_MARGIN` which is 8192 bytes. However, that safety margin is not
enough during high connection workloads.
MySQL also had a similar issue and the fix
https://github.com/mysql/mysql-server/commit/b086fda was to remove the use of
`alloca` and replace qsort approach by a linear scan through all pointers (pins)
owned by each thread.
This commit is mostly the same as it is the only way to solve this issue as:
1. Frame sizes in different architecture can be different.
2. Number of active (non-null) pinned addresses varies, so the frame
size for the recursive sorting function `msort_with_tmp` is also hard
to predict.
3. Allocating big memory blocks in stack doesn't seem to be a very good
practice.
For further details see the mentioned commit in MySQL and the inline comments.
All new code of the whole pull request, including one or several files
that are either new files or modified ones, are contributed under the
BSD-new license. I am contributing on behalf of my employer Amazon Web
Services, Inc.
Gbp-Pq: Name 2541-fix-stack-overflow-in-pinbox-allocator.patch
Sutou Kouhei [Sat, 5 Feb 2022 02:05:39 +0000 (11:05 +0900)]
[PATCH] cmake: add support for reproducible buildS . We should use relative path not absolute path. We can use target without breaking reproducibility.
Gbp-Pq: Name mroonga-mrn-lib-dirs-path-reproducible-build.patch
# Merged in RocksDB 6.19.3, but not updated into MariaDB yet
Bug: https://github.com/facebook/rocksdb/issues/7035
Author: Otto Kekäläinen <otto@kekalainen.net>
Subject: Make RocksDB build reproducible
The RocksDB binary included a string with the build timestamp:
> rocksdb_build_git_date:@2021-05-23·16:04:38@
As this changes from build to build, it makes the builds unreproducible.
Simply removing it solves the issue.
This temporary fix can be removed when a proper fix already done in upstream
lands in MariaDB when the RocksDB submodule is updated to a newer release.
Gbp-Pq: Name fix-reproducible-builds-rocksdb.patch
# Merged in RocksDB 7.3.1, but not updated into MariaDB yet
From: Otto Kekäläinen <otto@debian.org>
Date: Wed, 2 Mar 2022 18:13:18 -0800
Subject: Fix various spelling errors still found in code
Two upstream PRs remain that have been merged, but not imported on MariaDB yet.
Otto Kekäläinen [Sun, 20 Dec 2020 18:58:42 +0000 (20:58 +0200)]
Fix perl path in scripts Fix Lintian issue https://lintian.debian.org/tags/incorrect-path-for-interpreter.html . Upstream will never accept this patch, see https://github.com/MariaDB/server/pull/1718
# Merged in RocksDB 6.12.6 but not updated into MariaDB yet
From: Andrew Kryczka <andrewkr@fb.com>
Date: Tue, 16 Jun 2020 19:34:21 -0700
# Merged in RocksDB 6.13.fb, but not updated into MariaDB yet
Bug: https://jira.mariadb.org/browse/MDEV-19251
Description:
Upstream has merged this but we still need to wait for it to be included
in a RocksDB release and imported into MariaDB and then into Debian.
Ondrej Sury [Wed, 22 Nov 2017 20:32:51 +0000 (20:32 +0000)]
Change the default optimization from -O3 to -O2 in mysql_release.cmake BUILD_CONFIG profile
Forwarded: no
Bug: https://jira.mariadb.org/browse/MDEV-19734?focusedCommentId=156606&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-156606
Gbp-Pq: Name 0025-Change-the-default-optimization-from-O3-to-O2-in-mys.patch